package com.run2code.design.behavioral.state;

/**
 * 登录状态实现
 * 关注公众号【奔跑的码畜】，一起进步不迷路
 *
 * @author 第七人格
 * @date 2024/06/12
 */
public class LoggedInState implements UserState {
    private UserContent userContent;
  
    public LoggedInState(UserContent userContent) {
        this.userContent = userContent;
    }  
  
    @Override  
    public void showContent() {  
        System.out.println("用户已登录，显示个人主页内容...");  
    }  
  
    @Override  
    public void login() {  
        System.out.println("用户已登录，无需重复登录。");  
    }  
  
    @Override  
    public void logout() {  
        userContent.setState(new LoggedOutState(userContent));
        // 登出后展示未登录内容
        userContent.showContent();
    }  
}